/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sisvoto.modeloTablas;

import java.util.ArrayList;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.AbstractTableModel;
import org.jdesktop.swingx.JXLabel;
import sisvoto.DAO.ConsultasBD;
import sisvoto.ModeloDAO.ImagenPartidoDAO;
import sisvoto.modelo.Candidato;
import sisvoto.modelo.Eleccion;
import sisvoto.modelo.ImagenPartido;
import sisvoto.modelo.PartidoElectoral;

/**
 *
 * @author Dianita
 */
public class ModelTableElecciones extends AbstractTableModel {

    private List<Eleccion> lista = new ArrayList<>();
    private Eleccion seleccionado;


    public ModelTableElecciones(List<Eleccion> lista) {
        this.lista = lista;
    }

    @Override
    public int getRowCount() {
        return lista.size();
    }

    @Override
    public int getColumnCount() {
        return 3;
    }

    @Override
    public Object getValueAt(int fila, int columna) {

        seleccionado = lista.get(fila);
        switch (columna) {
            case 0:
                return seleccionado.getId();
            case 1:
                return seleccionado.getTitulo();
                
            case 2:             
                return seleccionado.getEstado();
            default:
                return null;
        }
    }

    @Override
    public Class getColumnClass(int columnIndex) {
        Class clazz = Object.class;
        Object aux = getValueAt(0, columnIndex);

        if (aux
                != null) {
            clazz = aux.getClass();
        }

        return clazz;
    }

    @Override
    public String getColumnName(int columna) {
        switch (columna) {
            case 0:
                return "Código";
            case 1:
                return "Titulo";
            case 2:
                return "Estado";
            default:
                return null;
        }
    }

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        // Permitimos editar todas las celdas de la tabla
        return false;

    }

    public void tamanioColumnas(JTable tabla) {
        tabla.getColumnModel().getColumn(0).setMaxWidth(100);
        tabla.getColumnModel().getColumn(1).setMaxWidth(220);
        tabla.getColumnModel().getColumn(2).setMaxWidth(60);
    }

    public void tamanioFilas(JTable tabla) {
        tabla.setRowHeight(22);
    }
}
